The present invention is directed to a system and method for generating logic for a Cause and Effects Matrix which may be used in a monitoring system. The present invention includes creating a matrix for defining the elements of the system that require monitoring, the responses to changes in the monitored elements and the relationship between the elements and the responses and automatically creating logic to implement the matrix. The present invention is directed to a system and method for graphically generating the Cause and Effects Matrix and implementing the matrix utilizing predefined logic as defined by the programming environment of the monitoring system, for example function blocks, to establish a particular cause, a particular effect and a relationship therebetween.
Cause and effects matrices are used in many industries for many purposes. The basic concept of a Cause and Effects Matrix is to provide a means for monitoring the activity of a process system and effecting a change in the system if specified events (causes) occur. For example, a safety engineer is aware of and understands the various events that could occur with respect to a process system and the responses the various events require. This engineer creates a Cause and Effects Matrix for that process system. Typically, the matrix lists possible causes along a first axis and lists possible Effects along a second axis, and sets forth a relationship between a particular cause and a particular Effect enumerated at an intersection for the Cause and the Effect in the matrix.
A xe2x80x9ccausexe2x80x9d is a theoretical construct that defines the data necessary to monitor each event in the process system. The cause includes information that defines which sensors to monitor and parameters that define the sensor type and how the data received from the sensor(s) is to be interpreted. A record of this information is established for each cause. The records are maintained in a cause database. In other words, for each cause in a Cause and Effects Matrix there is a cause record. A Cause and Effects Matrix that includes twelve causes will have twelve cause records. An xe2x80x9ceffectxe2x80x9d is a theoretical construct similar to the cause, but instead defines the data necessary to respond to the events of the process system. The effect includes information that defines which actuator(s) to operate and how to operate them. A record of this information is established for each effect. The records are maintained in an effects database. In other words, for each effect in a Cause and Effects Matrix, there is an effects record. A Cause and Effects Matrix that includes ten effects will have ten effects records.
A Cause and Effects Matrix can be a valuable analysis tool because all of the interactions between the listed causes and effects are explicitly shown. FIG. 1 illustrates an example of a Cause and Effects Matrix 16.
In the process industry, for example, in offshore oil drilling applications, safety engineers have used cause and effects matrices to describe and document a safety strategy. The Cause and Effects Matrix identifies all possible process events (causes) and the relationship the events have with possible responses to events (effects). Typically, Cause and Effects Matrices, as generated by the safety engineer, are included as part of a specification of a safety implementation system. The Cause and Effects Matrix is then translated by an instrumentation and control engineer into the design of a logic solver. When using programmable logic controllers (PLCs), for example, this typically means the arduous labor intensive job of implementing some type of logic, for example ladder logic or Boolean function block diagrams. Once the logic is implemented, the Cause and Effects Matrix is used to test the logic.
It is not uncommon for various errors to arise during the development of the logic for the Cause and Effects Matrix. In conventional systems and methods, each error that arises when generating the logic for the matrix requires time and labor intensive review of the developed code to locate and correct the errors. As such, conventional systems and methods require extensive testing to verify the logic implementation. Furthermore, modifications of the matrix require complete retesting to confirm proper logic implementation.
The present invention provides a system and method for generating logic for a cause and effects matrix.
The method of the present invention includes generating a matrix database including data defining an input parameter, an output response, and a relationship between the input parameter and the output response. The defining data of the matrix database is transferred to a matrix functional unit, the matrix functional unit including an input parameter functional unit, an output response functional unit and an intersection functional unit. The input parameter functional unit includes predefined, configurable logic for defining a particular input parameter. The output response functional unit includes predefined, configurable logic for defining a particular output response. The intersection functional unit includes a predefined, configurable logic for defining the relationship between the input parameter and the output response. Transferring the matrix database to the matrix functional unit configures the predefined input parameter logic, configures the predefined output response logic, and configures the predefined intersection logic.
The system of the present invention includes a matrix functional unit including an input parameter functional unit, an output response functional unit, and an intersection functional unit. The input parameter functional unit includes predefined, configurable logic for defining an input parameter. The output response functional unit includes predefined, configurable logic for defining an output response. The intersection functional unit includes predefined, configurable logic for defining the relationship between the input parameter and the output response. The system also includes a matrix database including data defining the input parameter, the output response, and the relationships between the input parameter and the output response and has a matrix programming tool for inputting the data into the database.
The present invention provides a system and method for graphically creating and configuring a matrix and for automatically establishing logic for implementing the matrix upon transferring data defining the matrix to a predefined, configurable functional unit.